package demo03;

import java.util.function.Supplier;

/*
 *  Supplier接口案例：求数组最大值
 */
public class Demo02SupplierGetMax {
    public static void main(String[] args) {
        int[] ints = { 8, 3, 6, 16, 19 };
        System.out.println(getMax(() -> { // Lambda实现Supplier接口的get()方法
            if (ints.length > 1) {
                int max = ints[0];
                for (int i = 1; i < ints.length; i++) {
                    max = max > ints[i] ? max : ints[i];
                }
                return max;
            } else {
                return ints[0];
            }
        }));
    }

    public static int getMax(Supplier<Integer> supplier) { // 方法参数为Supplier接口
        return supplier.get(); // 返回调用get()方法的结果
    }
}
